package everyday;

/**
 * @author zhangmin
 * @create 2022-05-05 9:28
 * 二进制中1的个数-汉明重量
 * 编写一个函数，输入是一个无符号整数（以二进制串的形式），返回其二进制表达式中数字位数为 '1' 的个数（也被称为 汉明重量).）。
 *
 * 思路：
 * n&（n-1）得到n的最后一位1变为0
 */
public class hammingWeight_offer15 {
    public int hammingWeight(int n) {
        int count=0;
        while (n!=0){
            count++;
            n=n&(n-1);
        }
        return count;
    }
}
